package com.ruoyi.system.service;

import java.util.List;
import com.ruoyi.system.domain.YcSubject;
import com.ruoyi.common.core.domain.Ztree;

/**
 * 学科Service接口
 * 
 * @author 杨琛
 * @date 2020-11-21
 */
public interface IYcSubjectService 
{
    /**
     * 查询学科
     * 
     * @param subjectId 学科ID
     * @return 学科
     */
    public YcSubject selectYcSubjectById(Long subjectId);

    /**
     * 查询学科列表
     * 
     * @param ycSubject 学科
     * @return 学科集合
     */
    public List<YcSubject> selectYcSubjectList(YcSubject ycSubject);

    /**
     * 新增学科
     * 
     * @param ycSubject 学科
     * @return 结果
     */
    public int insertYcSubject(YcSubject ycSubject);

    /**
     * 修改学科
     * 
     * @param ycSubject 学科
     * @return 结果
     */
    public int updateYcSubject(YcSubject ycSubject);

    /**
     * 批量删除学科
     * 
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    public int deleteYcSubjectByIds(String ids);

    /**
     * 删除学科信息
     * 
     * @param subjectId 学科ID
     * @return 结果
     */
    public int deleteYcSubjectById(Long subjectId);

    /**
     * 查询学科树列表
     * 
     * @return 所有学科信息
     */
    public List<Ztree> selectYcSubjectTree();

    /**
     * 查询点击被增加的学科下面的下级学科
     * @param subjectId 被增加学科id
     * @return 结果
     */
    List<YcSubject> selectYcSubjectSubordinate(Long subjectId);
}
